package com.aliyun.heiyu.powermaster.server.rbac.service;

import com.aliyun.heiyu.powermaster.proto.*;
import com.aliyun.heiyu.powermaster.server.rbac.object.entity.SysSafeAuditEntity;

public interface SafeService {
    /**添加安全审计信息*/
    boolean insertSysSafeBusiness(SysSafeAuditEntity safeAuditEntity,String token);

    boolean insertSysSafeBusinessException(SysSafeAuditEntity safeAuditEntity,String token);

    boolean insertSysSafeSystemException(SysSafeAuditEntity safeAuditEntity, String token);
    /**添加安全审计信息-python使用*/
    CommonReply insertSysSafeBusinessToPy(AddSafePyRequest safeAuditEntity);
    /**添加安全审计信息前端使用*/
    CommonReply insertSysSafeBusiness(AddSafeRequest safeAuditEntity);
    /**查询安全信息*/
    SafeAuditReply querySafes(SafeAuditRequest request);
    /**查询异常的安全审计信息*/
    SafeDTOReply queryExceptionSafes(SafeDTORequest request);
    /**确认推送的异常信息*/
    SafeDTOReply updateExcePush(SafeDTORequest request);
    /**查看安全审计是否溢出*/
    SafeVolumeReply getSafeVolume(SafeAuditRequest request);

    boolean insertSysSafeSystem(SysSafeAuditEntity safeAuditEntity);
    /**
     * 导入安全审计数据
     * @param request
     * @return
     */
    ImportSafeReply importSafes(ImportSafeRequest request);

    /**
     * 导出安全审计数据
     * @param request
     * @return
     */
    SafeAuditReply outputSafes(SafeAuditRequest request);

    /**
     * 安全审计报表
     * @param request
     * @return
     */
    ReportSafeReply reportSafes(SafeDTORequest request);


  //  void initSafe();

    ModifyAlertEmailPropertiesReply modifyAlertEmailProperties(ModifyAlertEmailPropertiesRequest request);

    AlertEmailPropertiesReply getAlertEmailProperties(AlertEmailPropertiesRequest request);


    FindSafeCapacityReply findSafeCapacity(FindSafeCapacityRequest request);

    UpdateSafeCapacityReply updateSafeCapacity(UpdateSafeCapacityRequest request);


    String getName(String token);
}
